public class Test10 {
    public static void main(String[] args) {
        /*
        需求:
        把整数每一位都添加到数组中
        大于0的整数
        反向推导
         */

        //需要有一个数组
        //动态初始化(不知道数组元素的时候,但是知道有几个)  静态初始化(知道数组元素)
        //使用动态初始化  int[] arr=new int[数组的长度];
        //数组的长度不知道,所以要计算出


        //1.计算出数组的长度
        int number=12345;
        int temp=number;
        //定义一个变量进行统计
        int count=0;
        while (number!=0){        //当number不等于0时就要去掉
            //每一次循环去掉右边的一个数字
            number=number/10;

            //去掉一次计数器就自增一次
            count++;
             //循环结束之后,count就是数字的个数
        }

        //2.定义数组
        //动态初始化
        int[] arr=new int[count];

        //3.把整数每一位都添加到数组中
        //不能从number中获取数字,因为上面的循环结束后,number的值为0
        //所以还要定义一个变量,临时记录number的值
        int index=arr.length-1;    //注意要把5放到最大索引,所以这里index不是0,而是最大索引
        while(temp!=0){
            //获取temp里面的每一位都添加到数组中
            int ge=temp%10;
            //再去掉右边的那位数字
            temp=temp/10;
            //再把当前获取的个位数添加到数组当中
            //arr[索引]=ge;    所以这里要定义变量索引
            arr[index]=ge;
            index--;
        }
        //验证结果是不是:1 2 3 4 5
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+" ");
        }

    }
}
